File: latexinfo2.info Node: setfilename, Prev: The Documentstyle, Up: The LaTeXinfo File Header, Next: New Indexes
`\setfilename'
--------------
It is important to note that the `\setfilename' command is required for
Info. In order to be made into an Info file, a LaTeXinfo file must
contain a line that looks like this:
\setfilename{INFO-FILE-NAME}
Write the `\setfilename' command at the beginning of a line followed by
the Info file name.
The `\setfilename' line specifies the name of the Info file to be
generated. Specify the name with an `.info' extension, to produce an
Info file name such as `latexinfo.info'.
Any text that appears before the `\setfilename' command is not
included in the Info file. So if you want to include the `title'
and `author' material, place the `\setfilename' command
before them; if not, after them.
This region, between the `\begin{document}' command and the
`\setfilename' command is known as the header, and should
contain any of the commands that alter the overall style of your document.
File: latexinfo2.info Node: New Indexes, Prev: setfilename, Up: The LaTeXinfo File Header, Next: Custom Headings
New Indexes
-----------
In order to generate any of the indices, you must declare them with the
`\newindex' command, before it is first used by one of the index
commands. This is usually done after the `\begin{document}'
but before the `\setfilename'.
`newindex' takes one argument, which is the two letter index type. For
example, to declare a concept and function index, you would use
\documentstyle[12pt,latexinfo]{book}
\begin{document}
\newindex{cp}
\newindex{fn}
\setfilename{plisp.info}
*Note Declaring indices::, for the declaring indices and the definitions of the index types.
File: latexinfo2.info Node: Custom Headings, Prev: New Indexes, Up: The LaTeXinfo File Header, Next: paragraphindent
Customizing Your Layout
-----------------------
You may, if you wish, create your own, customized headings and footings.
The `\markboth' and `\markright' commands are both supported in
LaTeXinfo. These should occur on a line by themselves. See
[Lamport1986, Section 5.1], for a detailed discussion of this process.
The `\oddfoot' and `\evenfoot' commands specifiy the
odd and even page footings respectively. These should occur on a line
by themselves.
At the beginning of a manual or book, pages are not numbered---for
example, the title and copyright pages of a book are not numbered. To
accomplish this, use the command
\pagestyle{empty}
as shown in the sample file, `lnfo-sample.tex'.
By convention, table of contents pages are numbered with roman numerals
and not in sequence with the rest of the document. To accomplish this,
use the commands
\pagestyle{headings}
\pagenumbering{roman}
as shown in the sample file, `lnfo-sample.tex'.
Since an Info file does not have pages, the `\markboth', `\markright',
`pagestyle' and `pagenumbering' commands have no effect on it. The
lines containing these commands will be deleted from the Info file.
The `\footnotestyle' command to specify an Info file's
footnote style. *Note Footnotes:: for how to use this command.
* Menu:
* paragraphindent:: Paragraph Indenting
File: latexinfo2.info Node: paragraphindent, Prev: Custom Headings, Up: Custom Headings, Next: The Title and Copyright Pages
Paragraph Indenting
...................
The Info formatting commands may insert spaces at the beginning of the
first line of each paragraph, thereby indenting that paragraph. The
`\paragraphindent' command specifies the indentation. Write
`\paragraphindent' at the beginning of a line followed by either `asis'
or a number in braces. The template is:
\paragraphindent{INDENT}
The Info formatting commands indent according to the value of INDENT:
* If the value of INDENT is `asis', the Info formatting commands do
not change the existing indentation.
* If the value of INDENT is 0, the Info formatting commands delete
existing indentation.
* If the value of INDENT is greater than 0, the Info formatting
commands indent the paragraph by that number of spaces.
The default value of INDENT is `asis'.
Write the `\paragraphindent' command before the `setfilename' command at
the beginning of a LaTeXinfo file.
The `latexinfo-format-buffer' and `latexinfo-format-region' commands do
*not* automatically indent paragraphs. These commands only indent
paragraphs that are ended by an `\refill' command. (*Note Always
Refilling Paragraphs::, for how to avoid this.) *Note Refilling
Paragraphs::, for more information about `\refill'.
File: latexinfo2.info Node: The Title and Copyright Pages, Prev: paragraphindent, Up: Beginning a File, Next: Titlepage
The Title and Copyright Pages
=============================
* Menu:
* Titlepage::
* The Copyright Page and Printed Permissions::
File: latexinfo2.info Node: Titlepage, Prev: The Title and Copyright Pages, Up: The Title and Copyright Pages, Next: The Copyright Page and Printed Permissions
Titlepage
---------
The first printed material after the `\begin{document}' will make up the
titlepage. The LaTeX commands `\title', `\author' and `\date' are used
the same way as in any LaTeX report or book. The title page is
terminated by `\maketitle'. Following the material for the title page
should be the copyright page.
\title{The PLisp Manual}
\author{Fred Foobar,\\
Clarke Institute}
\date{\today}
\maketitle
The `\title' command produces a line in which the title is set centered
on the page in a larger than normal font. You can have many lines in
the title by using `\\' to force a newline.
The `\author' command sets the names of the author or authors in a
middle-sized font, centered on the page.
The `\date' command sets the date in a middle-sized font, centered on
the page. You can put the date in yourself, or use the `\today'
command, which will put in the date that the document is processed on.
The `\maketitle' command sets the author, title and date, and in
the `book' documentstyle, emitts a new page. The should be no other
printing text between the `documentstyle' command and the
`maketitle' command.
In a `book' style, text is printed on both sides of the paper, chapters
start on right-hand pages, and right-hand pages have odd numbers. But
in a `report' style, text is printed only on one side of the paper
unless the `twoside' LaTeX option is provided to the `documentstyle'
command.
File: latexinfo2.info Node: The Copyright Page and Printed Permissions, Prev: Titlepage, Up: The Title and Copyright Pages, Next: Generating a Table of Contents
The Copyright Page and Printed Permissions
------------------------------------------
This part of the beginning of a LaTeXinfo file contains the text of
the copying permissions that will appear in the manual. This is usually
followed by the `\tableofcontents' command. If you put title
and copyright pages before the `\setfilename' command, then
this material will only appear only in the printed manual, not in the
Info file.
By international treaty, the copyright notice for a book should be
either on the title page or on the back of the title page. The
copyright notice should include the year followed by the name of the
organization or person who owns the copyright.
The following commands start the copyright page for the printed manual.
\maketitle
\clearpage
\vspace*{0pt plus 1filll}
Copyright \copyright{} year copyright-owner
Permission is granted to copy and distribute modified versions of this
document under the conditions for verbatim copying, provided that the entire
resulting derived work is distributed under the terms of a permission
notice identical to this one.
\pagestyle{empty}
\clearpage
When the copyright notice is on the back of the title page, the page is
not numbered. Therefore, this is usually done while a
`\pagestyle{empty}' is in effect. See the LaTeX Manual for more details
on the `pagestyle' command [Lamport1986].
To cause a page break, the `\clearpage' command is used. In the sample,
the `\clearpage' that ends the titlepage is followed by the somewhat
mysterious line that reads: `\vspace*{0pt plus 1filll}'. This is a line
that uses LaTeX commands to push the copyright notice and the other text
on the copyright page towards the bottom of the page. The `\vspace*'
command means to put in white space. The `0pt plus 1filll' means to put
in zero points of mandatory white space, and as much optional white
space as needed. Note the use of three `l's in the word `filll'; this
is the correct use in LaTeX.
The `\copyright' command generates a `c' inside a circle.
The copyright notice itself has the following legally defined sequence:
Copyright (C) YEAR COPYRIGHT-OWNER
It is customary to put information on how to get a manual after the
copyright notice (the address of the Free Software Foundation, for
example) and the permissions.
When you write a manual about a computer program, you should write the
version of the program to which the manual applies on the title page.
If the manual changes more frequently than the program or is independent
of it, you should also include an edition number (4) (*Note The
Copyright Page and Printed Permissions-Footnotes::) for the manual.
This helps readers keep track of which manual is for which version of
the program.
*Note Sample Permissions::, for recommended permission text.
File: latexinfo2.info Node: The Copyright Page and Printed Permissions-Footnotes, Up: The Copyright Page and Printed Permissions
(4) We have found that it is helpful to refer to versions of manuals as
`editions' and versions of programs as `versions'; otherwise, we find we
are liable to confuse each other in conversation by referring to both
the documentation and the software with the same words.
File: latexinfo2.info Node: Generating a Table of Contents, Prev: The Copyright Page and Printed Permissions, Up: Beginning a File, Next: The Top Node
Generating a Table of Contents
==============================
The commands `\chapter', `\section', etc., supply the
information to make up a table of contents, but they do not cause an actual
table to be generated. To do this, you must use the
`\tableofcontents' command.
The table of contents command outputs (into a printed manual) a complete
table of contents, based on the `\chapter', `\section' and other
sectioning commands. This command should be used on a line by itself.
This command automatically generates a Table of Contents heading at the
top of the page. Tables of contents should be generated at the
beginning of the manual, usually just after the `\maketitle' command or
copyright pages.
You can also use the `\listoftables' command to make a listing
of all of the tables in the document. *Note Figures and Tables::, for how
to define tables.
\pagestyle{empty}
\clearpage
\pagestyle{headings}
\pagenumbering{roman}
\tableofcontents
\clearpage
\c Make a list of tables if you have any
\listoftables
\clearpage
Since an Info file uses menus instead of tables of contents, the Info
formatting commands ignore the `\tableofcontents' and `\listoftables'
commands.
File: latexinfo2.info Node: The Top Node, Prev: Generating a Table of Contents, Up: Beginning a File, Next: Title of Top Node
The Top Node and Master Menu
============================
The `Top' node is the node at which you enter the file when browing the
Info file with one of the Info browsing programs.
A `Top' node should contain a brief description of the file and an
extensive, master menu for the whole Info file. The contents of
anything other than the master menu should appear only in the Info file;
none of it should appear in printed output, so enclose it between
`\begin{ifinfo}' and `\end{ifinfo}' commands. LaTeX does not print
either an `\node' line or a menu; they appear only in Info, so you do
not have to enclose these parts between `\begin{ifinfo}' and
File: latexinfo2.info Node: Indexing Commands, Prev: Index Entries, Up: Creating Indices, Next: Declaring indices
Defining the Entries of an Index
================================
The data to make an index comes from many individual indexing commands
scattered throughout the LaTeXinfo source file. Each command says to
add one entry to a particular index; after processing, it will give the
current page number or node name as the reference. An index entry
consists of an indexing command at the beginning of a line followed by
the entry in braces. For example, this section begins with the
following five entries for the concept index:\refill
\cindex{Defining indexing entries}
\cindex{Index entries}
\cindex{Entries for an index}
\cindex{Specifying index entries}
\cindex{Creating index entries}
Each declared index has its own indexing command---`\cindex' for the
concept index, `\findex' for the function index, and so on. An index
must be declared at the beginning of the document with the `\newindex'
command, before the first use of the corresponding index command. *Note
Declaring indices:: for how to use this command.
The usual convention is to capitalize the first word of each index
entry, unless that word is the name of a function, variable, or other
such entitity that should not be capitalized. Thus, if you are
documenting Emacs Lisp, your concept index entries are usually
capitalized, but not your function index entries. However, if your
concept index entries are consistently short (one or two words each) it
may look better for each regular entry to start with a lower case
letter. Which ever convention you adapt, please be consistent!
By default, entries for a concept index are printed in a small roman
font and entries for the other indices are printed in a small `\code'
font. You may change the way part of an entry is printed with the usual
LaTeXinfo commands, such as `\file' for file names and `\emph' for
emphasis (*Note Marking Text::).
The six indexing commands for predefined indices are:
\cindex{CONCEPT
Make an entry in the concept index for CONCEPT.
\findex{FUNCTION
Make an entry in the function index for FUNCTION.
\vindex{VARIABLE
Make an entry in the variable index for VARIABLE.
\kindex{KEY
Make an entry in the key index for KEY.
\pindex{PROGRAM
Make an entry in the program index for PROGRAM.
\tindex{DATA} TYPE
Make an entry in the data type index for DATA TYPE.
*Caution:* Do not use a colon in an index entry. In Info, a colon
separates the menu item name from the node name. An extra colon
confuses Info. *Note Writing a Menu Item: Menu Item, for more
information about the structure of a menu entry.
If the same name is indexed on several pages, all the pages are listed
in the printed manual's index. However, *only* the *first* node
referenced will appear in the index of an Info file. This means that it
is best to write indices in which each entry will refer to only one
place in the LaTeXinfo file.
* Menu:
* Declaring indices:: Declaring Indices
* Special Index Entries::
File: latexinfo2.info Node: Declaring indices, Prev: Indexing Commands, Up: Indexing Commands, Next: Special Index Entries
Declaring Indices
-----------------
The `\newindex' command takes a two-letter index name, and makes the
index commands for that index available for use. The `\printindex'
command takes a two-letter index name, reads the corresponding sorted
index file and formats it appropriately into an index. Normally, six
indices are provided for, and are referred to by their two-letter
abbreviations:
cp
A "concept index" listing concepts that are discussed.
pg
A "program index" listing names of programs and leading to the places
where those programs are documented.
fn
A "function index" listing functions (such as, entry points of
libraries).
vr
A "variables index" listing variables (such as, external variables of
libraries).
tp
A "data type index" listing data types (such as, structures defined in
header files).
ky
A "keystroke index" listing keyboard commands.
Not every manual needs all of these. This manual has two indices: a
concept index and a command index (that uses the function index but is
called a command index in the chapter heading). Two or more indices can be
combined into one using the `\synindex' command. *Note Combining Indices::.
You are not actually required to use the predefined indices for their
canonical purposes. For example, suppose you wish to index some C
preprocessor macros. You could put them in the function index along
with actual functions, just by writing `\findex' commands for them;
then, when you print the "function index" as an unnumbered chapter, you
could give it the title `Function and Macro Index' and all will be
consistent for the reader. Or you could put the macros in with the data
types by writing `\tindex' commands for them, and give that index a
suitable title so the reader will understand. (*Note Printing an Index
and Generating Menus::.)
* Menu:
* Special Index Entries::
File: latexinfo2.info Node: Special Index Entries, Prev: Declaring indices, Up: Indexing Commands, Next: Combining Indices
Special Index Entries
---------------------
The concept index has two special index entries to help you make more elaborate
concept indices.
`\cpsubindex{topic}{subtopic}' defines an entry in the
concept index, which has a subtopic. In the Info manual, this line and
anything on it is deleted.
`\cpindexbold{topic}' defines an entry in the concept index,
which is set in bold type. In the Info manual, this line and anything
on it is deleted.
All other indices have just one special index, the `\??indexbold'
command, which sets its entry in bold type.
File: latexinfo2.info Node: Combining Indices, Prev: Special Index Entries, Up: Creating Indices, Next: Creating and Installing an Info File
Combining Indices
=================
Sometimes you will want to combine two disparate indices such as
functions and variables, perhaps because you have few enough of one of
them that a separate index for them would look silly.
You could put functions into the concept index by writing `\cindex'
commands for them instead of `\findex' commands, and produce a
consistent manual by printing the concept index with the title `Function
and Concept Index' and not printing the `Function Index' at all; but
this is not a robust procedure. It works only if your document is never
included in part of or together with another document that is designed
to have a separate function index; if your document were to be included
with such a document, the functions from your document and those from
the other would not end up together. Also, to make your function names
appear in the right font in the concept index, you would have to enclose
every one of them between `\code' and `\end{code}'.
What you should do instead when you want functions and concepts in one
index is to index the functions with `\findex' as they should be, but
use the `\syncodeindex' command to redirect these `\findex' commands to
the concept index.
The `\syncodeindex' command takes two arguments: the name of an index to
redirect, and the name of an index to redirect it to:
\syncodeindex{FROM}{TO}
For this purpose, the indices are given two-letter names:
cp
the concept index
vr
the variable index
fn
the function index
ky
the key index
pg
the program index
tp
the data type index
Write an `\syncodeindex' command before or shortly after the end of
header line at the beginning of a LaTeXinfo file. For example, to merge
a function index with a concept index, write the following:
\syncodeindex{fn}{cp}
This will cause all entries designated for the function index to go to
the concept index instead.
The `\syncodeindex' command puts all the entries from the redirected
index into the `\code' font, overriding whatever default font is used by
the index to which the entries are redirected. This way, if you
redirect function names from a function index into a concept index, all
the function names are printed the `\code' font as you would expect.
The `\synindex' command is nearly the same as the `\syncodeindex'
command, except that it does not put the redirected index into the
`\code' font, but puts it in the roman font.
*Note Printing an Index and Generating Menus::, for information about
printing an index at the end of a book or creating an index menu in an
Info file.
File: latexinfo2.info Node: Creating and Installing an Info File, Prev: Combining Indices, Up: Top, Next: Creating an Info file
Creating and Installing an Info File
************************************
* Menu:
* Creating an Info file::
* Installing an Info File::
File: latexinfo2.info Node: Creating an Info file, Prev: Creating and Installing an Info File, Up: Creating and Installing an Info File, Next: latexinfo-format commands
Creating an Info file
=====================
In GNU Emacs, the way to create an Info file is to visit the file and
invoke
`M-x latexinfo-format-buffer'
A new buffer is created and the Info file text is generated there. ^x
^s (`save-buffer') will save it under the name specified in the
`\setfilename' command. `latexinfo-format-region' and
`latexinfo-format-buffer' are the two Emacs commands that you can also
use for formatting. A LaTeXinfo file must possess an `\setfilename'
line near its beginning, otherwise the formatting commands will fail.
For information on installing the Info file in the Info system, see
*Note Installing an Info File::.
* Menu:
* latexinfo-format commands:: The `latexinfo-format...' Commands
* Tag and Split Files:: Tag Files and Split Files
File: latexinfo2.info Node: latexinfo-format commands, Prev: Creating an Info file, Up: Creating an Info file, Next: Tag and Split Files
The latexinfo-format Commands
-----------------------------
In GNU Emacs in LaTeXinfo mode, you can format part or all of a
LaTeXinfo file with the `latexinfo-format-region' command. This formats
the current region and displays the formatted text in a temporary buffer
called `*Info Region*'.
Similarly, you can format the whole file with the
`latexinfo-format-buffer' command. This command creates a new buffer
and generates the Info file in it. Typing `C-x C-s' will save the Info
file under the name specified by the `\setfilename' line which must be
near the beginning of the LaTeXinfo file. *Note Info Formatting::, for
how to use the commands:
C-c C-e C-r (`latexinfo-format-region')
Format the current region for Info.
C-c C-e C-b (`latexinfo-format-buffer')
Format the current buffer for Info.
The `latexinfo-format-region' and `latexinfo-format-buffer' commands
provide you with some error checking; and other functions provide you
with further help in finding formatting errors. These procedures are
described elsewhere, *Note Catching Formatting Mistakes::.
File: latexinfo2.info Node: Tag and Split Files, Prev: latexinfo-format commands, Up: Creating an Info file, Next: Installing an Info File
Tag Files and Split Files
-------------------------
If a LaTeXinfo file has more than 30,000 bytes,
`latexinfo-format-buffer' automatically creates a "tag table" for its
Info file. With a tag table, Info can jump to new nodes more quickly
than it can otherwise.
In addition, if the LaTeXinfo file contains more than about 70,000
bytes, `latexinfo-format-buffer' splits the large Info file into shorter
"indirect" subfiles of about 50,000 bytes each. Big files are split
into smaller files so that Emacs does not have to make a large buffer to
hold the whole of a large Info file; instead, Emacs allocates just
enough memory for the small, split off file that is needed at the time.
This way, Emacs avoids wasting memory when you run Info. (Before
splitting was implemented, Info files were always kept short and
"include" files were designed as a way to create a single, large printed
manual out of the smaller Info files. *Note Include Files::, for more
information. Include files are still used for very large documents,
such as The Emacs Lisp Reference Manual, in which each chapter is a
separate file.)
When a file is split, Info itself makes use of a shortened version of
the original file that contains just the tag table and references to the
files that were split off. The split off files are called "indirect"
files.
The split off files have names that are created by appending `-1', `-2',
`-3' and so on to the file names specified by the `\setfilename'
command. The shortened version of the original file continues to have
the name specified by `\setfilename'.
At one stage in writing a document, for example, the Info file called
`test-latexinfo' might have looked like this:
Info file: test-latexinfo, -*-Text-*-
produced by latexinfo-format-buffer
from file: new-manual.tex
^_
Indirect:
test-latexinfo-1: 102
test-latexinfo-2: 50422
test-latexinfo-3: 101300
^_^L
Tag table:
(Indirect)
Node: overview^?104
Node: info file^?1271
Node: printed manual^?4853
Node: conventions^?6855
...
Each of the split off, indirect files, `test-latexinfo-1',
`test-latexinfo-2', and `test-latexinfo-3', is listed in this file after
the line that says `Indirect:'. The tag table is listed after the line
that says `Tag table:'.
If you are using `latexinfo-format-buffer' to create Info files, you may
want to run the `Info-validate' command. However, you cannot run the
`M-x Info-validate' node-checking command on indirect files. For
information on how to prevent files from being split and how to validate
the structure of the nodes, *Note Using Info-validate::.
* Menu:
* Installing an Info file::
* Extending LaTeXinfo::
File: latexinfo2.info Node: Installing an Info File, Prev: Tag and Split Files, Up: Creating and Installing an Info File, Next: Directory file
Installing an Info File
=======================
Info files are usually kept in the `.../emacs/info'
directory. This directory is the values of the Emacs variable
`Info-directory'.
* Menu:
* Directory file:: The top level menu for all Info files.
* New Info File:: Listing a new info file.
* Other Info Directories:: How to specify Info files that are
located in other directories.
File: latexinfo2.info Node: Directory file, Prev: Installing an Info File, Up: Installing an Info File, Next: New Info File
The `dir' File
--------------
For Info to work, the `info' directory must contain a file that serves
as a top level directory for the Info system. By convention, this file
is called `dir'. The `dir' file is itself an Info file. It contains
the top level menu for all the Info files in the system. The menu looks
like this:
* Menu:
* Info: (info). Documentation browsing system.
* Emacs: (emacs). The extensible, self-documenting
text editor.
* LaTeXinfo: (latexinfo). With one source file, make
either a printed manual using
LaTeX or an Info file.
...
Each of these menu entries points to the `Top' node of the Info file
that is named in parentheses. (11) (*Note Directory file-Footnotes::)
Thus, the `Info' entry points to the `Top' node of the `info' file and
the `Emacs' entry points to the `Top' node of the `emacs' file.
In each of the Info files, the `Up' pointer of the `Top' node refers
back to the `dir' file. For example, the node line for the `Top' node
of the Emacs manual looks like this:
File: emacs Node: Top, Up: (DIR), Next: Distrib
(Note that in this case, the file name is written in upper case
letters---it can be written in either upper or lower case. Info has a
feature that it will change the case of the file name to lower case if
The principal differences between this style and the `elisp'
style are the following:
* An optional parameter can be defined after the name of the command,
that is used to indicate the package to which the entity belongs. Insert
this optional argument in the traditional LaTeX style of using square
brackets.
* The function arguments can contain the keywords
`\&optional', `\&rest', and `\&key'.
* The function arguments can contain the functions
`\keys{...}' and `\morekeys{...}' to properly
align the keyword arguments of a function.
* The variable and function index entries are coerced to lower case.
* The commands `\true', `\false', `\empty'
and `\nil' are defined to print as , , and respectively.
\DEFUN{NAME}[PACKAGE]{ARGUMENTS...}
The `\defun' command is the definition command for functions.
`\defun' is equivalent to `\deffn{Function}
...'. The package argument is optional, and the square brackets are
omitted if no package is provided. Within the argument list, the
following keywords are recognized: `\&optional', `\&rest', and `\&key'. They print as themselves in the
`\code' font.
The argument names on the `\defun' line do not automatically
appear in italics in the printed manual; they should be enclosed in
`\var'. Terminate the definition with `\enddefun'
on a line of its own.
Within the argument list, the following commands are recognized:
`\args{}'
which does nothing.
`\keys{...}'
prints the word `&key',
and sets the tab stop to be align subsequent keys.
`\morekeys{...}'
starts a new line and
moves to the tab stop set by `\keys'.
`\yetmorekeys{...}'
the same as
`\morekeys'.
The arguments to these functions are set with a LaTeX minpage environment.
This means that new lines within the argument list will start new lines
in the region between the function name and the function type. Furthermore,
the arguments are contained within a `tabbing' environment, that allows
the use of the `\=' and `\>' tab--set and tab commands.
This allows one to line up parts of the argument list, such as keys, and
the `\*keys' commands are implemented in terms of these.
\DEFMAC{NAME}[PACKAGE]{ARGUMENTS...}
The `\defmac' command is the definition command for macros.
`\defmac' is equivalent to `\deffn{Macro}
...'. The package argument is optional, and the square brackets are
omitted if no package is provided. Within the argument list, the
following commands are recognized: `\&optional', `\&rest', and `\&key'. They print as themselves in the
`\code' font. `\defspec' is similarly defined
for special forms.
Within the `\defun' and `\defmac' argument lists, the
following special functions are recognized:
mopt
To indicate {optional forms}.
mchoice
To indicate {a choice of forms}.
mstar
To indicate 0 or more {optional forms}.
mplus
To indicate 1 or more {forms}.
mgroup
To indicate a group of {forms}.
mor
To indicate an or between forms.
mind
To indicate an {form}.
For more information on this syntax, see [Steele1990].
\DEFVAR{NAME}[PACKAGE]
The `\defvar' command is the definition command for variables.
`\defvar' is equivalent to `\deffn{Variable}'.
`\defconst' is similarly defined for constants.
In addition to these commands, there are the corresponding "head-less"
commands: `\deffnx', `\deffunx', `\defspecx', `\defmacx', `\defvrx', `\defvarx', `\defconstx', which are defined identically to
the corresponding commands expect that no extra space is put before
the command heading. You can use these on the second or more of a
section that describes a number of definitions.
File: latexinfo2.info Node: LaTeXinfo support for European languages, Prev: Clisp Style, Up: Extending LaTeXinfo, Next: LaTeXinfo support for European languages
LaTeXinfo support for European languages
========================================
LaTeXinfo tries to support European languages, but it is an area
that is in great flux right now. `german.sty' is supported as
an optional file, and this will also provide some support for French.
The following diacrtical marks are supported by default in LaTeXinfo,
either in the form `\LETTER' or `\{LETTER}'
`\^'
Circumflex accent: c.
`\`'
Accute accent: e.
`\''
Grave accent: e.
`\"'
Tremat: o.
In the Info file, these marks are removed.
But note that by default, the commands `\c', `\b'
`\i' are used for other purposes than their LaTeX usage
as diacritical marks.
The hyphenation character `\-' is also supported.
To support Multi-lingual TeX, `latexinfo.sty' looks for the presence
of the LaTeX number `\language', which are assumed to be defined
as follows:
\newcount\USenglish \global\USenglish=0
\newcount\german \global\german=1
\newcount\austrian \global\austrian=2
\newcount\french \global\french=3
\newcount\english \global\english=4
The presence of `\language' set to any of `\english'
`\english', `\french' or `\german' changes
the way the cross-references are printed in LaTeX.
The default is `\english'.
german.sty
----------
LaTeXinfo has support for the file `german.sty', as of
Vers. 2.3, 7 Aug 1990, collected by H. Partl (TU Wien), using ideas
by W. Appelt, F. Hommes et al. (GMD St.Augustin), T. Hofmann
(CIBA-GEIGY Basel), N. Schwarz (Uni Bochum), J. Schrod (TH Darmstadt),
D. Armbruster (Uni Stuttgart), R. Schoepf (Uni Mainz), and others. It
is a document style option for writing german texts with TeX or
LaTeX. It can be called via adding the `german' option to the
`\documentstyle' command.
User's should resort to their already-installed version of `german.sty'
(if any) before using the one from LaTeXinfo, so the existing LaTeX
site documentation won't break. Various copies of this file exist from
different eras; you may wish to inquire if one is already installed at
your site, and look to see if it is more or less recent than the one
distributed with LaTeXinfo.
To support Multi-lingual TeX, `latexinfo.sty' looks for the presence
of the LaTeX number `\language', and if it is set to
`\german', it sets the cross-references in German, and
looks to see if `\mdqon' is defined. If so, it lets double quotes
have their special meaning, and otherwise sets them as double quotes in
typewriter font.
This file conforms to the standard for Einheitliche deutsche TeX-Befehle
as proposed at the 6th Meeting of German TeX Users in Muenster, October 1987.
Commands to be used by the end users
....................................
"a
for Umlaut-a (like a), also for all other vowels.
"s
for sharp s (like `\ss'{}).
"ck
for ck to be hyphenated as k-k.
"ff
for ff to be hyphenated as ff-f, also for certain
other consonants.
"|
to separate ligatures.
"-
like , but allowing hyphenation in the rest of
the word.
""
like "-, but producing no hyphen sign.
"` or `\glqq'
for german left double quotes (similar to ,,)
"' or `\grqq'
for german right double quotes (similar to ")
`\glq'
for german left single quotes (similar to , )
`\grq'
for german right single quotes (similar to ` )
"< or `\flqq'
for french left double quotes (similar to <<)
"> or `\frqq'
for french right double quotes (similar to >>)
`\flq'
for french left single quotes (similar to < )
`\frq'
for french right single quotes (similar to > )
`\dq'
for the original quotes character (")
`\setlanguage'{n}
to switch to the language specified by n, which should be one of the
format, captions and (if "multilingual TeX"is installed) hyphenation.
`\originalTeX'
to restore everything to the original
settings of TeX and LaTeX (well, almost everything).
`\germanTeX'
to re-activate the german settings.
* Menu:
* Obsolete Commands::
* Lower Level Commands and Features::
File: latexinfo2.info Node: Obsolete Commands, Prev: LaTeXinfo support for European languages, Up: LaTeXinfo support for European languages, Next: Lower Level Commands and Features
Obsolete Commands
.................
Obsolete commands, provided for compatibility with existing applications:
\3
for sharp s (like "s).
`\ck'
for ck to be hyphenated as k-k (like "ck).
File: latexinfo2.info Node: Lower Level Commands and Features, Prev: Obsolete Commands, Up: LaTeXinfo support for European languages, Next: Writing Your Own Style Files
Lower Level Commands and Features
.................................
`\umlautlow'
redefines the Umlaut accent such that the dots come nearer to the
letter and that hyphenation is enabled in the rest of the word.
`\umlauthigh'
restores to its original meaning.
`\ss'
is `\lccode''d to enable hyphenation.
`\mdqon'
makes " an active (meta-) character that does the pretty things